package org.me.service.impl;

import java.io.Serializable;
import java.util.List;
import org.me.data.GenericDaoHibernate;
import org.me.entityBeans.TDistritos;
import org.me.service.DistritoServiceHibernate;

public class DistritoServiceHibernateImpl implements DistritoServiceHibernate{
    
    private GenericDaoHibernate genericDaoHibernateImpl;

    public GenericDaoHibernate getGenericDaoHibernateImpl() {
        return genericDaoHibernateImpl;
    }

    public void setGenericDaoHibernateImpl(GenericDaoHibernate genericDaoHibernateImpl) {
        this.genericDaoHibernateImpl = genericDaoHibernateImpl;
    }  
   
    //Graba o actualiza un Distrito x su Id
    @Override
    public void saveOrUpdateDistrito(TDistritos distrito) {
        this.getGenericDaoHibernateImpl().saveOrUpdate(distrito);
    }
    
    //Borra un Distrito x su Id
    @Override
    public String deleteDistrito(TDistritos distrito) {
        return this.getGenericDaoHibernateImpl().delete(distrito);
    }
    
    //Trae todos los Distritos  ordenados x Id    
    @Override
    public List<TDistritos> findAllDistritos() {        
        return this.getGenericDaoHibernateImpl().findByOnlyNamedQuery( "TDistritos.findAll");        
    }    
    
    //Trae el Distrito que coincida con el nombre
    @Override
    public List<TDistritos> findByNameDistrito(String nomDistrito) {          
        return this.getGenericDaoHibernateImpl().findByCriterio( "TDistritos.findByVNombreDistrito", "vNombreDistrito", nomDistrito );
    }  
    
    //Trae el Distrito que coincida con el id
    @Override
    public TDistritos findByIdDistrito(Serializable id) {        
        return  this.getGenericDaoHibernateImpl().findById(TDistritos.class, id);
    }
    
}
